package com.mida.dms.knw.vo;

import com.alibaba.fastjson.annotation.JSONField;
import com.mida.tool.common.utils.LongToStringSerializer;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;

import java.util.Date;

/**
 * @author ：wang xiao le
 * @description：TODO 模板段落片段Slot
 * @date ：2021/4/6 14:08
 */
@Getter
@Setter
public class DocStructTemplateSlotVo {

    /**
     * 结构化报告扩展属性标识
     */
    @JSONField(serializeUsing = LongToStringSerializer.class)
    @ApiModelProperty(value = "结构化报告扩展属性标识")
    private Long stTemplateSlotSoid;

    /**
     * 结构化报告模板段落片段标识
     */
    @JSONField(serializeUsing = LongToStringSerializer.class)
    @ApiModelProperty(value = "结构化报告模板段落片段标识")
    private Long stFragraSoid;

    /**
     * 扩展属性标识
     */
    @JSONField(serializeUsing = LongToStringSerializer.class)
    @ApiModelProperty(value = "扩展属性标识")
    private Long slotSoid;

    /**
     * 序号
     */
    @ApiModelProperty(value = "序号")
    private Integer serialNo;

    /**
     * 最后修改人
     */
    @JSONField(serializeUsing = LongToStringSerializer.class)
    @ApiModelProperty(value = "最后修改人")
    private Long updateUser;

    /**
     * 逻辑删除标识
     */
    @JSONField(serializeUsing = LongToStringSerializer.class)
    @ApiModelProperty(value = "逻辑删除标识")
    private Long isDelete;

    /**
     * 最后修改日期
     */
    @ApiModelProperty(value = "最后修改日期")
    private Date updateDate;

    /**
     * 创建日期
     */
    @ApiModelProperty(value = "创建日期")
    private Date createDate;

    /**
     * 结构化报告模板段落片段类型0:片
     */
    @ApiModelProperty(value = "结构化报告模板段落片段类型0:片")
    private Integer stFragraType;

    /**
     * 概念描述soid
     */
    @JSONField(serializeUsing = LongToStringSerializer.class)
    private Long conceptualDetailSoid;

    /**
     * 编码体系soid
     */
    @JSONField(serializeUsing = LongToStringSerializer.class)
    private Long derailCodingSystemSoid;

    //slotName同义词
    private String conceptualName;

    // 实例标识(用于片段slot之间插入实例使用)
    @JSONField(serializeUsing = LongToStringSerializer.class)
    private Long individualSoid;

    // 实例简称
    private String individualName;

    // 所属本体标识
    @JSONField(serializeUsing = LongToStringSerializer.class)
    private Long noumenonSoid;

    private String slotName;
    //片段自由文本
    private String stFragmentText;

    //Tag(前端结构画报告 标签  自由文本<TagNum><TagSele><TagSlot><TagStr><Tag>)
    private String tagName;

    //CSS 样式格式
    private String style;

    //is_class,js_class
    private String className;

    //模板段落片段SlotValue集合
    private  DocStructSlotValueVo docStructSlotValueVo;

    private  DocStructCssVo docStructCssVo;
}
